home *** CD-ROM | disk | FTP | other *** search
- #==============================================================================
- # rle.test
- #------------------------------------------------------------------------------
- # Test of the Tcl SIPP RLE rendering commands.
- #------------------------------------------------------------------------------
- # Copyright 1992 Mark Diekhans
- # Permission to use, copy, modify, and distribute this software and its
- # documentation for any purpose and without fee is hereby granted, provided
- # that the above copyright notice appear in all copies. Mark Diekhans makes
- # no representations about the suitability of this software for any purpose.
- # It is provided "as is" without express or implied warranty.
- #------------------------------------------------------------------------------
- # $Id: rle.test,v 2.0 1992/11/02 03:56:02 markd Rel $
- #==============================================================================
-
- if {![SippInfo rle]} {
- echo "RLE commands not available. Tests skipped"
- return
- }
-
- if {[info procs test] == ""} {source testprocs.tcl}
-
- #
- # Test SippRLEOpen command.
- #
-
- test {rle-1.1} {
- SippRLEOpen
- } 1 {wrong # args: SippRLEOpen filename mode}
-
- test {rle-1.2} {
- SippRLEOpen abcd.rle foo
- } 1 {invalid mode "foo" expected one of: "w" or "a"}
-
- test {rle-1.3} {
- SippRLEOpen abcd.rle "w" baz
- } 1 {wrong # args: SippRLEOpen filename mode}
-
- test {rle-1.4} {
- set rleHdl [SippRLEOpen noimage.rle "w"]
- crange $rleHdl 0 2
- } 0 {rle}
-
- #
- # Test SippRLEClose command.
- #
- test {rle-2.1} {
- SippRLEClose
- } 1 {wrong # args: SippRLEClose rlehandle}
-
- test {rle-2.2} {
- SippRLEClose foo baz
- } 1 {wrong # args: SippRLEClose rlehandle}
-
- test {rle-2.3} {
- SippRLEClose foo
- } 1 {invalid rlefile handle: foo}
-
- #
- # Test SippRlePutCom command.
- #
-
- test {rle-3.1} {
- SippRLEPutCom
- } 1 {wrong # args: SippRLEPutCom rlehandle name [value]}
-
- test {rle-3.2} {
- SippRLEPutCom foo value
- } 1 {invalid rlefile handle: foo}
-
- test {rle-3.3} {
- SippRLEPutCom $rleHdl
- } 1 {wrong # args: SippRLEPutCom rlehandle name [value]}
-
- test {rle-3.4} {
- SippRLEPutCom $rleHdl a b c
- } 1 {wrong # args: SippRLEPutCom rlehandle name [value]}
-
- #
- # Test SippRLEGetCom command.
- #
-
- test {rle-4.1} {
- SippRLEGetCom
- } 1 {wrong # args: SippRLEGetCom rlehandle name [retvar | {}]}
-
- test {rle-4.2} {
- SippRLEGetCom foo value
- } 1 {invalid rlefile handle: foo}
-
- test {rle-4.3} {
- SippRLEGetCom $rleHdl
- } 1 {wrong # args: SippRLEGetCom rlehandle name [retvar | {}]}
-
- test {rle-4.4} {
- SippRLEGetCom $rleHdl a b c
- } 1 {wrong # args: SippRLEGetCom rlehandle name [retvar | {}]}
-
- test {rle-4.5} {
- SippRLEPutCom $rleHdl "test-rle-3.1"
- SippRLEGetCom $rleHdl "test-rle-3.1"
- } 0 {}
-
- test {rle-4.6} {
- SippRLEPutCom $rleHdl "test-rle-3.2" "value-rle-3.2"
- SippRLEGetCom $rleHdl "test-rle-3.2"
- } 0 {value-rle-3.2}
-
- test {rle-4.7} {
- set retvar {}
- SippRLEPutCom $rleHdl "test-rle-3.3"
- list [SippRLEGetCom $rleHdl "test-rle-3.3" retvar] [set retvar]
- } 0 {1 {}}
-
- test {rle-4.8} {
- set retvar {}
- SippRLEPutCom $rleHdl "test-rle-3.4" "value-rle-3.4"
- list [SippRLEGetCom $rleHdl "test-rle-3.4" retvar] [set retvar]
- } 0 {1 value-rle-3.4}
-
- test {rle-4.9} {
- SippRLEPutCom $rleHdl "test-rle-3.5" "value-rle-3.5"
- SippRLEGetCom $rleHdl "test-rle-3.4" {}
- } 0 {1}
-
- #
- # Test SippRLEDelCom command.
- #
-
- test {rle-5.1} {
- SippRLEDelCom
- } 1 {wrong # args: SippRLEDelCom rlehandle name}
-
- test {rle-5.2} {
- SippRLEDelCom foo value
- } 1 {invalid rlefile handle: foo}
-
- test {rle-5.3} {
- SippRLEDelCom $rleHdl
- } 1 {wrong # args: SippRLEDelCom rlehandle name}
-
- test {rle-5.4} {
- SippRLEDelCom $rleHdl a b c
- } 1 {wrong # args: SippRLEDelCom rlehandle name}
-
- test {rle-5.5} {
- set retvar {}
- SippRLEPutCom $rleHdl "test-rle-3.6"
- SippRLEDelCom $rleHdl "test-rle-3.6"
- SippRLEGetCom $rleHdl "test-rle-3.6"
- } 0 {}
-
- test {rle-5.6} {
- set retvar {}
- SippRLEPutCom $rleHdl "test-rle-3.7"
- SippRLEDelCom $rleHdl "test-rle-3.7"
- list [SippRLEGetCom $rleHdl "test-rle-3.7" retvar] [set retvar]
- } 0 {0 {}}
-
- test {rle-5.7} {
- set retvar {}
- SippRLEPutCom $rleHdl "test-rle-3.8" "value-rle-3.8"
- SippRLEDelCom $rleHdl "test-rle-3.8"
- list [SippRLEGetCom $rleHdl "test-rle-3.8" retvar] [set retvar]
- } 0 {0 {}}
-
- #
- # Test SippRLERender command.
- #
-
- test {rle-6.1} {
- SippRLERender
- } 1 {wrong # args: SippRLERender [-flag] rlehandle xsize ysize [mode] [oversample]}
-
- test {rle-6.3} {
- SippRLERender $rleHdl 256 256 phong 1 10
- } 1 {wrong # args: SippRLERender [-flag] rlehandle xsize ysize [mode] [oversample]}
-
- test {rle-6.4} {
- SippRLERender $rleHdl 1.9 256 phong
- } 1 {expected unsigned integer but got "1.9"}
-
- test {rle-6.5} {
- SippRLERender $rleHdl 256 256 foo
- } 1 {invalid rendering mode, expect one of `PHONG', `GOURAUD', `FLAT', or `LINE', got: foo}
-
- test {rle-6.5} {
- SippRLERender -FOO $rleHdl 256 256 PHONG
- } 1 {expected one of "-BOTH", "-OLD", or "-EVEN", got "-FOO"}
-
- test {rle-6.6} {
- SippRLERender -BOTH $rleHdl 256 256 PHONG 1 100
- } 1 {wrong # args: SippRLERender [-flag] rlehandle xsize ysize [mode] [oversample]}
-
- test {rle-6.7} {
- SippRLERender -EVEN $rleHdl 256 256 LINE 1
- } 1 {Can't specify "-ODD" or "-EVEN" with a mode of "LINE"}
-
- SippRLEClose $rleHdl
- unlink noimage.rle
-
- #
- # Do some real rendering. These must be run in seperate processes, since
- # the state of SIPP cann't be completly reset.
- #
-
- test {rle-7.1} {
- catch {unlink ellipsoid1.rle}
- set cmd {source testprocs.tcl
- Ellipsoid
- set rle [SippRLEOpen "|cat > ellipsoid1.rle" "w"]
- SippRLEPutCom $rle "test" "rle-7.1 PHONG"
- SippRLERender $rle 256 256 PHONG 1
- SippRLEClose $rle}
- exec ../tsipp -c $cmd
- CheckFile ellipsoid1.rle 30954
- exec rlehdr ellipsoid1.rle | grep "test="
- } 0 {test=rle-7.1 PHONG}
-
- test {rle-7.2} {
- catch {unlink ellipsoid2.rle}
- set cmd {source testprocs.tcl
- Ellipsoid
- set rle [SippRLEOpen ellipsoid2.rle "w"]
- SippRLEPutCom $rle "test" "rle-7.2 GOURAUD"
- SippRLERender $rle 256 256 GOURAUD 1
- SippRLEClose $rle}
- exec ../tsipp -c $cmd
- CheckFile ellipsoid2.rle 31174
- exec rlehdr ellipsoid2.rle | grep "test="
- } 0 {test=rle-7.2 GOURAUD}
-
- test {rle-7.3} {
- catch {unlink ellipsoid3.rle}
- set cmd {source testprocs.tcl
- Ellipsoid
- set rle [SippRLEOpen ellipsoid3.rle "w"]
- SippRLEPutCom $rle "test" "rle-7.3 FLAT"
- SippRLERender $rle 256 256 FLAT 1
- SippRLEClose $rle}
- exec ../tsipp -c $cmd
- CheckFile ellipsoid3.rle 14786
- exec rlehdr ellipsoid3.rle | grep "test="
- } 0 {test=rle-7.3 FLAT}
-
- test {rle-7.4} {
- catch {unlink ellipsoid4.rle}
- set cmd {source testprocs.tcl
- Ellipsoid
- set rle [SippRLEOpen ellipsoid4.rle "w"]
- SippRLEPutCom $rle "test" "rle-7.4 LINE #1"
- SippRLERender $rle 256 256 LINE
- SippRLEPutCom $rle "test" "rle-7.4 LINE #2"
- SippRLERender $rle 256 256 LINE
- SippRLEClose $rle
-
- set rle [SippRLEOpen ellipsoid4.rle "a"]
- SippRLEPutCom $rle "test" "rle-7.4 PHONG"
- SippRLERender $rle 256 256 PHONG 1
- SippRLEClose $rle}
- exec ../tsipp -c $cmd
- CheckFile ellipsoid4.rle 77994
- exec rlehdr ellipsoid4.rle | grep "test="
- } 0 {test=rle-7.4 LINE #1
- test=rle-7.4 LINE #2
- test=rle-7.4 PHONG}
-
- test {rle-7.5} {
- catch {unlink ellipsoid5.rle}
- set cmd {source testprocs.tcl
- Ellipsoid
- set rle [SippRLEOpen ellipsoid5.rle "w"]
- SippRLEPutCom $rle "test" "rle-7.5 -ODD FLAT"
- SippRLERender -ODD $rle 256 256 FLAT 1
- SippRLEClose $rle}
- exec ../tsipp -c $cmd
- CheckFile ellipsoid5.rle 7460
- exec rlehdr ellipsoid5.rle | grep "test="
- } 0 {test=rle-7.5 -ODD FLAT}
-
-